/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package com.ideastec.mipyme.persistence.direccion;

import java.util.List;

import com.ideastec.mipyme.persistence.DAOPadre;
import com.ideastec.mipyme.model.direccion.Direccion;
import com.ideastec.mipyme.model.localidad.Localidad;
import com.ideastec.mipyme.repository.direccion.RepositorioDireccion;

/**
 *
 * @author Diego Rafael Graf
 */

public class DAODireccion extends DAOPadre<Direccion> implements RepositorioDireccion{
    
    @Override 
    protected Class<Direccion> getClase(){
        return Direccion.class;
    }
    
    @Override 
    public List<Direccion> buscarDireccion(Direccion direccion) throws Exception{
        try{
            return this.getHibernateTemplate().find("from " + persistentClass.getName() + " where direccion = '" + direccion.getDireccion() + "'");
        }
        catch(Exception e){
            throw new Exception(e);
        }
    }
    
    @Override 
    public List<Direccion> buscarDireccionPorLocalidad(Direccion direccion) throws Exception{
        try{
            return this.getHibernateTemplate().find("from " + persistentClass.getName() + " where direccion = '" + direccion.getDireccion() + "' and IDLOCALIDAD = " + direccion.getLocalidad().getId());
        }
        catch(Exception e){
            throw new Exception(e);
        }
    }
    
    @Override 
    public List<Direccion> listarDireccionesPorLocalidad(Localidad localidad) throws Exception{
        try{
            return this.getHibernateTemplate().find("from " + persistentClass.getName() + " where idprovincia = '" + localidad.getId() + "'");
        }
        catch(Exception e){
            throw new Exception(e);
        }
    }
    
}
